Empirically Evaluating Improved Heuristics for Test Data Generation from OCL Constraints using Search Algorithms
نویسندگان
چکیده
Efficiently generating test data is one of the key testing requirements of automated model-based test case generation. Keeping this in mind and driven by the needs of our industrial partners, we propose an improvement in heuristics that we previously defined to generate test data from OCL constraints using search algorithms. We evaluate our improved heuristics using two empirical studies with three search algorithms: Alternating Variable Method (AVM), (1+1) Evolutionary Algorithm (EA), and a Genetic Algorithm (GA). Furthermore, we used Random Search (RS) as a comparison baseline. The first empirical study was conducted using carefully designed artificial problems (constraints) to assess each individual heuristics. The second empirical study is based on an industrial case study provided by Cisco. The results of both empirical evaluations reveal that the effectiveness of the search algorithms, measured in terms of time to solve the OCL constraints to generate data, is significantly improved when using the novel heuristics presented in this paper. In particular, our experiments show that (1+1) EA with the novel heuristics has the highest success rate among all the analyzed algorithms, as it requires the least number of iterations to solve constraints to generate test data. Keywords-UML; OCL; Search-based testing; Test data; Empirical evaluation
منابع مشابه
Empirical Evaluation of Metaheuristic Approaches for Symbolic Execution based Automated Test Generation
This paper empirically evaluates four meta-heuristic search techniques namely particle swarm optimization, artificial bee colony algorithm, Genetic Algorithm and Big Bang Big Crunch Algorithm for automatic test data generation for procedure oriented programs using structural symbolic testing method. Test data is generated for each feasible path of the programs. Experiments on ten benchmark prog...
متن کاملPerformance Analysis of Test Data Generation for Path Coverage Based Testing Using Three Meta- Heuristic Algorithms
This paper discusses an approach to generate test data for path coverage based testing using Genetic Algorithms, Differential Evolution and Artificial Bee Colony optimization algorithms. Control flow graph and cyclomatic complexity of the example program has been used to find out the number of feasible paths present in the program and it is compared with the actual no of paths covered by the ev...
متن کاملThe Use of Model Constraints as Imprecise Software Test Oracles
Many software test generation techniques target on generating software test data. Only a few of them provide automatic way to verify if software behaves correctly using generated test data. We propose a testing technique, which uses UML modeling language extension OCL as imprecise test oracle. Imprecise OCL constraints can be viewed as expressions which define expected results within some range...
متن کاملAiding Test Case Generation in Temporally Constrained State Based Systems Using Genetic Algorithms
Generating test data for formal state based specifications is computationally expensive. This paper improves a framework that addresses this issue by representing the test data generation problem as an optimisation problem and uses heuristics to help generate test cases. The paper considers the temporal constraints and behaviour of a certain class of finite state machines. A short case study of...
متن کاملOptimizing the AGC system of a three-unequal-area hydrothermal system based on evolutionary algorithms
This paper focuses on expanding and evaluating an automatic generation control (AGC) system of a hydrothermal system by modelling the appropriate generation rate constraints to operate practically in an economic manner. The hydro area is considered with an electric governor and the thermal area is modelled with a reheat turbine. Furthermore, the integral controllers and electri...
متن کامل